﻿/// <summary>
/// Author: HBLAi
/// Date: 2013/06/07
/// </summary>
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;

namespace SketchTour.Models
{
    public enum Sex { Male, Female };
    public class MSST00Models
    {
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtCode")]
        public string Code { get; set; }

        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtNameVN")]
        public string NameVN { get; set; }

        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtNameEn")]
        public string NameEN { get; set; }

        [ScaffoldColumn(false)]
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtType")]
        public long? StaffTypeID { get; set; }

        [DisplayName("Staff Type Name")]
        public string StaffType { get; set; }

        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtBir")]
        public Nullable<System.DateTime> BirthDay { get; set; }

        [Required(ErrorMessage = "Please select either Female or Male.")]
        public string Sex { get; set; }

        [RegularExpression(@"^\d+$", ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSVH00_SCR_txtTelFormat")]
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtTel")]
        public string Tel { get; set; }

        [RegularExpression(@"^\d+$", ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtExpFormat")]
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtExp")]
        public int? Experience { get; set; }

        [RegularExpression(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSHT00_SCR_txtEmailFormat")]
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtEmail")]
        public string Email { get; set; }

        [ScaffoldColumn(false)]
        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtAddress")]
        public string Address { get; set; }

        [Required(ErrorMessageResourceType = typeof(Resources.Resource), ErrorMessageResourceName = "MSST00_SCR_txtLang")]
        public string StaffOfLanguage { get; set; }

        public Nullable<System.DateTime> CreateDate { get; set; }
        public string CreateBy { get; set; }
        public Nullable<System.DateTime> UpdateDate { get; set; }
        public string UpdateBy { get; set; }
    }

    public static class MSST00Key
    {
        public const string Code = "Code";
        public const string NameVN = "NameVN";
        public const string NameEN = "NameEN";
        public const string StaffTypeID = "ID";
        public const string StaffType = "StaffTypeName";
        public const string BirthDay = "BirthDay";
        public const string Sex = "Sex";
        public const string Tel = "Tel";
        public const string Experience = "Experience";
        public const string Email = "Email";
        public const string Address = "Address";
        public const string StaffOfLanguage = "StaffOfLanguage";
    }
}